Z-Write is a word processor designed for writers of fiction, though writers of all flavors might find its unique features useful. Unlike traditional word processors which force you to work in a linear mode with chapter following chapter, Z-Write allows you to store multiple sections of text within a single file. You can have as many sections as you like, and each section can have as much text as you've got RAM.
<P>For example, if you're writing a novel, you might create sections with the names of each of your main characters and use the text area of each to detail each character's biography.
<P>That's the beauty of Z-Write. Instead of dozens or even hundreds of files of notes, scenes, descriptions, character bios, chapters, various versions, etc., you can have one file with everything in it! This makes the process of sorting, finding, and remembering details a billion times easier. You can even use Z-Write's sections as a way to manage multiple versions of a say, a chapter. If you've ever tried to keep two versions of Chapter 7 in a traditional linear word processor file, you know it's not fun.
<P>Z-Write is not intended to replace your high-end word processor. In fact, it is little more than a glorified SimpleText (except it can work with files much larger than 32K). For writing, I prefer simple and elegant to feature-laden bloat. So you won't find support for centering text, footnotes, fancy printing options, etc. The idea is that you'll use Z-Write for <i>writing</i> and brainstorming. When you're ready to have your masterpiece published, you can export the text for final formatting in full-featured word processor like Nisus Writer or Microsoft Word.
<P>With those limitations in mind, Z-Write does have some nice features writers will appreciate. It supports find and replace, case conversion, and there's a special "bookmark" option, which allows you to create electronic bookmarks for jumping to specific places within your text.
<P>If you need a spelling checker and thesaurus, I recommend <a href="http://www.casadyg.com/">Casady and Greene's excellent SpellCatcher</a>, which checks your spelling as you type and works within any application. <B>Note:</B> there's a conflict with REALbasic that prevents SpellCatcher's thesaurus from working, though the interactive spelling checker works fine.
<P>There is also the freeware spelling checker "Excalibur," which works with Z-Write via AppleEvents. You can download Excalibur at <a href="http://www.eg.bucknell.edu/~excalibr/excalibur.html">http://www.eg.bucknell.edu/~excalibr/excalibur.html</a>. It works great, but the one drawback with this method is that you lose any text formatting (such as bold or font size change) you may have applied to your text.
<P><B>Key Features</B>
<UL>
<LI>Unique multi-section writing system
<LI>Simple, elegant, and functional
<LI>On-line instructions and "Hot Help" for button bar items
<LI>Powerful find/replace
<LI>Electronic bookmarks
<LI>Handy button bar
<LI>Time/Date insert
<LI>Can automatically "bullet" or number paragraphs
<LI>Convenience: Z-Write remembers your document's window size, position, and even exactly where you were editing when you last saved.
<LI>Automatic "smart quote" feature
<LI>Auto-save feature (you set the frequency in minutes)
<LI>Export to HTML, RTF, and styled text
<LI>Glossary of frequently used bits of text.
<LI>Easily view multiple Sections at once
</UL>
<P><h2>Usage</h2><BR>
Z-Write is simple to use. When you create a new file, the main word processing window is displayed. Z-Write uses an elegant dual-paned writing system. On the left is a scrollable list of Section names. (New files have only one pre-defined section called "Default." You can set the default name within the Preferences window.) To the right of the Section List is a standard text editing area. You are free to type in this area.
<P>At the top of the window is a handy "button bar," where you have tools for quickly formatting your text, such as font and text size menus and style buttons. If you point your mouse cursor at any of the buttons, a description of its use will appear in the "Hot Help" area below the Section List at the bottom of the window.
<P>If you select a different Section from the list on the left, the text for that section is displayed on the right. You are free to edit and copy and paste between sections. You can even drag text from other applications into the editing area, and if you drag a selection to the desktop, Z-Write will create a text clipping (if your system supports it).
<P>At any time, you can add or delete Sections to your document. You can create as many Sections as you like, but they each must be uniquely named. (Z-Write prevents you from entering the same name twice.) You can write as much as you'd like in each Section. No matter how many Sections you create, Z-Write saves the entire document as one convenient file.
<P>See "Working with Sections" for more details.
<P><h2>Finding and Replacing</h2><BR>
Z-Write includes powerful find and replace capabilities. You can specify whether Z-Write searches just the current Section or All Sections. Within the Find/Replace dialog you can add special characters to your search string, such as a tab or carriage return (end-of-paragraph).
<P>After completing a find or a replace, you can press Command-G to find or replace again. Z-Write will continue the search from the cursor's current position.
<P>If you choose "Replace All" from within the Find/Replace dialog, Z-Write will replace every occurrence found in the Section or entire document. Note that there is no undo for "Replace All," so make sure you really mean it! (As a safety precaution, you can save just before doing a Replace All.)
<P><h2>Bookmarks and Other Features</h2><BR>
One of Z-Write's coolest features is its support for electronic bookmarking. You can place a bookmark anywhere in your text using the "Insert Bookmark" command. When you do that, Z-Write inserts "<bookmark>" into your text at the cursor position. You are free to move or delete this text, but if you change it, it won't be a valid bookmark and Z-Write won't be able to find it. (You can type in "<bookmark>" manually if you want, but pressing Command-B is easier.)
<P>When you search for a bookmark, Z-Write jumps to the next one in your text. You can use this feature to mark various parts of your document for quick access.
<P><b>Note:</b> when you print or export text from Z-Write, the bookmark codes are conveniently removed.
<P>On the button bar is a handy popup menu for converting the case of selected text. You can quickly make the text uppercase, lowercase, or capitalize each word in the selection (titlecase).
<P>Another button will add bullets or numbers to each of the selected paragraphs. This is handy if you're creating a list of items. Type in them in, select the whole bunch, and choose "Bullet Paragraphs" from the bullet popup.
<P>If you want to see your document's statistics, press Command-I or click the "Info" button. Z-Write will display a floating window showing the number of characters, words, sentences, and paragraphs in your selection, Section, and entire document. (You may leave this window open while you type, but its contents are not updated until you click the Info button or press Command-I again.)
<P>Also on the button bar are a Find button (the same as choosing Find from the Edit menu) and a color popup, which lets you color the selected text. There are several common colors predefined, but if you choose "Other" from the menu you are prompted with a standard Apple color picker.
<P>Another feature is the Copy Attributes and Paste Attributes commands. These are found on the Edit menu. They allow you to memorize the formatting of a selection of text: color, size, font, and other features are saved and can be "pasted" onto another selection. This is a great way to keep heading consistent. Simply format the first heading the way you'd like it to appear, then copy the attributes of it and paste them onto the other headings. They will each take on the size and style of the first, but their text will not change.
<P>If you prefer not to have the Buttonbar, you can hide it by pressing Command-Y (or choosing "Hide Buttonbar" from the Edit menu). You can bring it back by using the same command again. Z-Write will remember the buttonbar state of your document when you save it. If you prefer all new documents to not have the buttonbar, you can set that within the Preferences window.
<P><h2>Glossary</h2><BR>
With Z-Write you can save snippets of text into glossary entries. Each entry has a unique name. Then you can either choose the glossary's name from a menu on the button bar or type the name of the item and press Option-Tab. (The text cursor must either be exactly to the right of the glossary name or the glossary name must be highlighted for the Option-Tab method to work.)
<P>You can define, delete, and edit your glossary entries at any time via the "Edit Glossary Items" command on the Utilities menu.
<P>There are two special commands you can insert into a glossary item: #d and #t. These characters are replaced by the current date and time (in the format specified within preferences). This allows you to create a custom date and time stamp. You can even map your glossary item to one of Z-Write's date/time insert commands (see Preferences for more details on this powerful feature).
<P><h2>Working with Sections</h2><BR>
Sections are the most significant feature of Z-Write. You can create as many Sections as you want. You can duplicate an existing Section with the Duplicate command (Z-Write will append a number on the end to distinguish it from the original). This is handy for rewrites and alternate versions.
<P>If you'd like to rename a Section, choose "Rename Section" from the Utilities menu (or press Command-R). Z-Write will display a dialog box where you can edit the name.
<P>To delete a Section, choose "Remove Section" from the Utilities menu. If the Section contains text, Z-Write will confirm your request before removing it.
<P>To move between Sections quickly, you can use Option-Arrow Up and Option-Arrow Down to move up or down the list of Sections.
<P>Often while you are working, you find it would be nice to see a different Section than the one you're currently working in. Z-Write has a unique feature: it lets you open Sections in separate "read-only" windows. You cannot edit text within a View window -- but you can select and drag text from it into your main window.
<P>To open a Section in a View window, simply Option-Doubleclick on the Section's name. The Section name will be displayed in italics to show you that it's open in a View window. The View window is named "Document Name:Section Name". This allows you to quickly see which View windows belong to which Z-Write documents and which Section is displayed. You will note the crossed-out pencil icon on the View window reminds you that you can't edit text in a View window. To edit it, select the Section within the main Z-Write document window and edit it there. (Editing a Section won't automatically update its View window -- you must bring the View window to the front to display the current text.)
<P><h2>Preferences</h2><BR>
Z-Write is customizable to the way you work via a nice selection of preference settings. The Preferences window is divided into several tabbed panes, with each panel allowing you to change various settings. These are briefly explained within the "hothelp" feature within the dialog box, but here's more detail about each option.
<P>The General area lets you set various preferences for how Z-Write operates. For instance, there's an "Autosave" feature, where you define a length of time in minutes and Z-Write saves your document automatically as often as you'd like. There are also view settings, like whether you want the Z-Write buttonbar to be visible by default on new documents.
<P><b>Smart Quotes</b><br>
You can also turn on Z-Write's "Smart Quotes" feature. Smart quotes are sometimes called curly quotes, since they curl in and out depending on if they are at the beginning or ending of a phrase. Smart quotes give your work a more "typeset" look, but they aren't always compatible across platforms. On Macs you can type curly left and right doublequotes with Option-[ and Option-Shift-[, but that's not the easiest. Z-Write will replace standard quotes with curly quotes as you type if you turn on the "Automatic Smart Quotes" feature. If Z-Write types the curly quote in the wrong direction (which can happen if Z-Write is unsure whether you're at the beginning of a phrase or not), don't panic -- just press the same quote key again and Z-Write will just change the quote's direction. (You can also convert between smart and straight quotes via the commands on the convert menu -- useful for text you've already typed or you're preparing to e-mail.)
<P><b>Date/Time Formats</b><br>
Since Z-Write has handy tools for allowing you to insert the Date and Time within your document (such as clicking on the document's clock in the lower right corner), it allows you to set the format used (such as "7/4/99" versus "Sunday, July 4, 1999"). In fact, Z-Write lets you pick two formats: a primary and a secondary. If you Option-click the date or time clocks (or hold down Option while you choose Insert Date or Insert Time from the Utilities menu) Z-Write will use the alternate format.
<P>A powerful secondary feature of this is that you can map Glossary items to any of these functions. Simply choose the glossary name from a popup menus to assign it to that function. This is mainly for creating custom date/time stamps. For instance, you could have a stamp that prints out "Modified Wednesday, July 7, 1999 at 9:16:31 PM." Rather than pieces that together with several clicks of the mouse and some typing, simple create a glossary item that reads like this: "Modified #d at #t." When you call the glossary item, Z-Write will replace the "#d" with the primary date and "#t" with the primary time. (You can also use #dd and #tt for the secondary date and time.)
<P>If you map this glossary item to a preference for, say, the secondary date function, option-clicking the date would execute your glossary (instead of the regular date routine).
<P>Glossary items can be as extensive as you'd like, so this is a powerful feature. However, you cannot "nest" glossaries. In other words, you can't map a glossary named "mydate" to the primary date and then, in that glossary, include #t (which calls the glossary item which calls the date, ad infinitum). If you do so, your glossary item will work, but you'll receive an error message in place of the "#t" symbol.
<P><b>Spelling Checker</b><br>
Since Z-Write uses the free Excalibur spelling checker, you must have downloaded and installed it for Z-Write to allow the checking of spelling. To prevent you from selecting spelling without installing Excalibur, you must enable spelling within the Preferences dialog before the Check Spelling command is available. You only have to do this once. There's a handy button within the window to copy the Excalibur URL to the clipboard for you so you can visit the website at your convenience.
<P><b>Printing Options</b><br>
Z-Write's printing options are simple. You can turn on various options for printing headers on your documents -- including page numbers, the print date, and/or the print time. If you turn all options off Z-Write won't print any headers. You can also specify the printing margins for your document.
<P><b>Document Defaults</b><br>
Under the Document panel you will find an area where you can specify the font and font size Z-Write uses for new documents. There's also a place where you can put the default name for the Section when Z-Write creates a new document. By default this is "Default" but you can change it to whatever you want.
<P><b>Templates (a.k.a. Stationery)</b><br>
While a default font is nice, sometimes you'd prefer more control over how Z-Write creates new documents. If you define a Template file -- basically a Z-Write document with whatever settings, text, and Sections you'd like -- Z-Write will automatically create a duplicate whenever you launch it.
<P>For instance, let's say you like to write short stories and you've got a nice Z-Write document with certain common sections you need for your stories. Tell Z-Write it's a template document and Z-Write will make a blank copy of it ready for writing. To set the default template, choose the "Open template" option and click the "Choose Template" button to select a file.
<P>If you've got a Template defined, you can choose "New" from the File menu while holding down the Option key and Z-Write will create a copy of your default template for you. (If you want to create a document from a different template, use the "Open Template" command.)
<P><h2>Exporting Text</h2><BR>
Z-Write is designed for the purpose of a research and writing tool. For final production, you'll probably want to export the text you've created in Z-Write in a format other programs support. Z-Write allows you to export its text in one of three formats: styled text (Macintosh "Simpletext" format, readable by nearly any Mac program), HTML, and RTF (Rich Text Format). RTF is readable by many word processors such as Microsoft Word.
<P>With Text and RTF export you only have two options: you can either export the current Section or All Sections. If you choose All Sections, the text for each Section is combined into a single file. Each Section is labeled with "Section: Section Name" so you can easily find the various Sections.
<P><b>HTML Export</b><br>
HTML export is a little more complicated. The simplest option is to export just the current Section, which creates one file. If you choose to export all your Sections, you have a choice between creating one HTML (where each Section is labeled) or create multiple files, where each Section is a separate HTML file.
<P>If you choose the latter option, you can have Z-Write generate a TOC file. This is a very basic HTML document with the title of your document and bulleted list of documents. Each of these is the name of a Section and is hotlinked to that document. This makes it easy to put your document on the Web. If you'd like to enhance the look of the basic HTML documents Z-Write creates, you can edit the files within an HTML editor like Adobe PageMill or by hand if you know HTML.
<P>When you export any HTML there are two settings that effect the kind of HTML generated. You can set Z-Write to use all uppercase or lowercase HTML codes. This has no effect on performance or quality -- it's simply a subjective issue for people who like to edit HTML by hand. You can also set whether or not Z-Write uses FONT tags to preserve font information. If you turn this option on, the document should look the same within your browser as within Z-Write. If you're planning on publishing the document on the Web and you've used fonts others viewing the document may not have, it might be better to turn this option off (meaning the document will be displayed with whatever default font the user has set for their browser).
<P><h2>Known Issues</h2><BR>
As Z-Write is pre-release software, there are some known problems, bugs, and missing features. The following was known at the time of this release:
<UL>
<LI>Z-Write's printing routines are primitive and haven't been well-tested.
<LI>Z-Write is completely RAM-based, meaning that it can require a lot of memory to function. If you experience problems with crashing, try allocating more memory to the program.
<LI>The current "Replace All" function is slow. There's a secret "fast replace" feature: if you hold down the option key while clicking "Replace All" the replace will happen quickly, but there are two drawbacks: A) it uses lots of memory and on very large files (500K+) can cause Z-Write to crash, and B) it loses all your text formatting (bold, italic, font selection, etc.).
<LI>The current version of the Info button calculates statistics roughly. For instance, it simply counts spaces for words, and periods as sentences. It may be accurate enough for most purposes, but perhaps not. Feedback on whether this should be enhanced would be beneficial.
<LI>I have a report that while Z-Write works well under the Japanese Language Kit, the JLK floating toolbar does not work within Z-Write. This is apparently caused by a bug in REALbasic and is out of my control. Fortunately, the keyboard command for using JLK works fine. (I believe this is the same bug that causes problems with SpellCatcher's thesaurus window.)
<LI>Still some bugs within the Sentencecase feature.
</UL>
<P><h2>About Stone Table Software</h2><BR>
STS is a division of DesignWrite, my graphic design company. STS's philosophy is to produce simple, elegant applications that exemplify the Macintosh Way. My belief is if you can't do it right, why bother doing it at all.
<P><B>About the Author</B> <BR>
My name is Marc Zeedar. I've been using the Mac since '88, and computers since high school. (For some reason my ancient semi-compatible PC clone hasn't been touched, since, well, 1988. Gee, I wonder if there's a connection somewhere. Could it be that Macs are superior? Gasp! No, it couldn't be!)
<P>I run my own graphic design company in Northern California called DesignWrite, producing a wide range of graphic communication pieces, including posters, brochures, newsletters, books, catalogs, calendars, and advertisements. I also do electronic publishing consulting, Macintosh training and seminars, and technical writing. (If you'd like more information on DesignWrite's services, please contact me or see my <a href="http://www.designwrite.com/">website</a>.) Programming is done in my "negative" spare time (i.e. the time I should be sleeping or having fun).
<P>I maintain a number of websites:<br>
<UL><LI><a href="http://www.svprint.com/pmscripting.html">The PageMaker Scripting Center</a>, for graphic designers who use Adobe PageMaker.
<LI><a href="http://designwrite.com/oneclick/index.html">OneClick Fan Page</a>, for fans of WestCode's amazing OneClick macro software.
<LI><I><a href="http://designwrite.com/havoc/index.html">The Wreakly Havoc</a></I>, my own neglected e-zine.
</UL>
<P>You can also find my opinion column, <I>Less Tangible</I>, at <a href="http://www.macopinion.com">MacOpinion</a>, and I sometimes write articles for <a href="http://www.applelinks.com">AppleLinks</a>.
<P>I got into programming in high school when I owned a PC clone and no software (or money to buy it with). Back then when I wanted software to do something I had to write it myself. Today I work as a graphic designer and I have ideas for all kinds of (seemingly) simple utilities that would make my life much easier, but no one is writing them. So I'm diving in and doing it myself. Z-Write is a terrific example of this process at work. I wrote it as something I'd like, but then figured others might find it useful.
<P><h2>Technical Specs (ugh!)</h2><BR>
Z-Write was entirely written in REAL Software's REALbasic, an absolutely incredible object-oriented programming environment. I encourage anyone interested in Mac programming but intimidated by the high learning curve to check out the REALbasic 30-day demo at <A HREF="http://www.realbasic.com/">http://www.realbasic.com/</A>. Believe it or not, I got this program working (opening and saving files) in less than 20 hours of programming time. That's partly because I was able to reuse some code from another project, but mostly because REALbasic is so easy. Adding extra features like find and replace and printing took a bit longer.
<UL><LI>Redid Preferences dialog (added a bunch of new options)
<LI>Added "Other…" to type menu
<LI>Added template (stationery) document support
<LI>Modified Undo routine slightly (hopefully for the better).
<LI>Added ability to assign glossary items to time/date routines and incorporate #d and #t into glossary items.
<LI>Made it so View windows close when main file is closed.
<LI>Made it so View windows update contents when activated.
<LI>Made it remember location of StatsDialog
<LI>Fixed Window menu bug
<LI>New App and File icons!
</UL>
<P>Version 0.9.7b - Not released <BR>
<UL><LI>Added RTF Export
<LI>Modified text export with dialog box like RTF and HTML Export routines
<LI>Added Glossary feature
<LI>Added Copy/Paste Attributes command
</UL>
<P>Version 0.9.6b - Not released <BR>
<UL><LI>Added HTML export
<LI>Added colored text support
<LI>Added progress bar support to HTML export
<LI>Added option-arrow keys for Section List navigation
<LI>Added Rename Section menu command (with dialog)
<LI>Added DuplicateSection menu command
<LI>Made it so "Viewed" Section names are in italic
<LI>Added "Export All" feature
<LI>Added Registration button
<LI>Added Registration Info menu, registration button in legalBox, registration dialog, serial number stuff, etc.
</UL>
<P>Version 0.9.5b - Not released <BR>
<UL><LI>changed button icons to new cicns in resource file
<LI>added ability to hide button bar (via preference dialog)
<LI>added Find icon to button bar
<LI>added View window feature
<P>Version 0.9.4b - Released as minor update to Beta 3<BR>
<UL><LI>added scrolling credits to aboutBox
<LI>changed moving column to show two shadow lines instead of one
<LI>added spelling checker enable in prefs box
</UL>
<P>Version 0.9.3b - Third beta release - Wednesday, June 23, 1999 <BR>
<UL><LI>Added support for Excalibur spelling checking.
<LI>Added "Autosave" feature.
<LI>Added "smart quotes" feature.
<LI>Added quote conversion.
</UL>
<P>Version 0.9.2b - Second beta release - Friday, June 4, 1999 <BR>
<UL><LI>Enhanced case conversion features.
<LI>Fixed bug in on-line help which prevented Z-Write from quiting after using help.
</UL>
<P>Version 0.9.1b - First beta release - Friday, May 21, 1999 <BR>
<UL><LI>Implemented printing.
<LI>Added text export feature.
<LI>Fixed window menu bug.
<LI>Enhanced button bar items.
<LI>Added "bullet" feature and case conversion.
<LI>Added preference dialog.
<LI>Got on-line help working.
<LI>Created Z-Write graphics for splash and about screens.
</UL>
<P>Version 0.8b - Friday, May 14, 1999 <BR>
<UL><LI>Added find/replace routines.
<LI>Made it so Z-Write would store cursor positions between sections and within file.
<LI>Created Z-Write graphics for splash and about screens.
<LI>Added basic button bar.
<LI>Add "info" button (word count and other stats).
<LI>Added "Hot Help" capability.
</UL>
<P>Version 0.7 - Thursday, May 13, 1999<BR>
<UL><LI>Got Z-Write to save files.
<LI>Added bookmark capability.
</UL>
<P>Version 0.6 - Tuesday, May 11, 1999<BR>
<UL><LI>Got Z-Write to open files.
</UL>
<P>Version 0.5 - Wednesday, May 6, 1999<BR>
<UL><LI>Established data structure and experimented with concept.
<LI>Set up basic dual-panel display.
<LI>Created basic app using template code from another project.
</UL>
<P><h2>Licensing</h2><BR>
This software is a <b>pre-release version</b> and will only function for a limited time. You may use it without paying a fee, but you <B>may not</B> sell this software. You may distribute the complete, unmodified package via the Internet, but it may not be included in a CD-ROM collection. Eventually the software will be released as Shareware and these restrictions will be eliminated.
<P>All users are encouraged to offer suggestions, comments, and bugs reports.
<P>This program is not public domain and is fully protected under international copyright law. It may not be modified in any manor without the express written permission of Stone Table Software. This program is provided with no warranties, expressed or implied, and STS is not liable for damage or loss of work caused by this program. Use this program at your own risk.
<P><B>Support</B><BR>
Because I am not charging for this version of Z-Write, support will be minimal. If you discover any bugs or problems, please contact me. I'm especially interested in feature suggestions and comments regarding what you think of this program.
<P><B>Disclaimer (double ugh!)</B><BR> This product is being distributed as is with no warranty whatsoever. The author, DesignWrite, and Stone Table Software are not liable or responsible for any failure of this product to perform to your expectations or for any data or performance loss you experience as a consequence to your using this product. Use of this product is at your own risk!